package com.etone.smartAudit.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.etone.smartAudit.domain.ProductMap;
import com.etone.smartAudit.enums.OnlineState;
import com.etone.smartAudit.vo.productMap.ProductMapVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * @author: sovy
 * @date: 2020/12/22
 * @description:
 */

@Mapper
public interface ProductMapMapper extends BaseMapper<ProductMap> {

    /**
     * @param key              关键字（能力代码、能力名称、适应范围）
     * @param abilityTypeIds   能力类别
     * @param serviceNatureIds 产品服务性质
     * @param startUpdateTime  编辑开始时间
     * @param endUpdateTime    编辑结束时间
     * @param onlineState      上线状态
     * @return
     */
    List<ProductMapVO> findList(@Param("key") String key, @Param("abilityTypeIds") List<Integer> abilityTypeIds, @Param("serviceNatureIds") List<Integer> serviceNatureIds, @Param("startUpdateTime") Date startUpdateTime, @Param("endUpdateTime") Date endUpdateTime, @Param("onlineState") OnlineState onlineState);

    /**
     * 判断是否存在
     *
     * @param id
     * @return
     */
    Boolean exists(@Param("id") Integer id);

    /**
     * @param id
     * @return
     */
    ProductMapVO findProductMapVO(@Param("id") Integer id);
}